Layer-2 link-state protocols such as Fabricpath and Transparent Interconnection of Lots of Links (TRILL) networks (TRILL)—are currently being deployed as the networking fabric to enable large scale data centers. TRILL is an IETF (Internet Engineering Task Force) protocol implemented by devices such as Routing Bridges. TRILL introduces new data and control planes for Ethernet networks. FabricPath protocol allows combining plug-and-play simplicity of Ethernet with the reliability and scalability of Layer 3 routing. FabricPath, allows for the build of highly scalable Layer 2 multipath networks without the Spanning Tree Protocol. Such networks are used, for example, with large virtualization deployments, private clouds, and high-performance computing (HPC) environments.
The main motivation behind using such technologies is their layer-2 like simplicity while they ensure efficient data forwarding by using shortest path routes for known unicast traffic. However, to carry unknown unicast traffic (such as frames destined to broadcast MAC address FF:FF...:FF or for which destination MAC and switch-id binding is not known) and multicast traffic tree-based forwarding mechanism is used.
Prior mechanisms simply choose the root for the multicast trees based on the priority of the nodes. This may lead to inefficient forwarding if root nodes are not chosen carefully. There is a need for a mechanism to choose the optimal roots for multicast trees used for carrying multicast/unknown|unicast/broadcast traffic while minimizing the overall delivery cost.